home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c-part2 / 11878 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  5.2 KB

  1. Path: rcp6.elan.af.mil!rscernix!danpop
  2. From: danpop@mail.cern.ch (Dan Pop)
  3. Newsgroups: comp.lang.c
  4. Subject: Re: H&S4 errata?
  5. Date: 26 Mar 96 18:10:56 GMT
  6. Organization: CERN European Lab for Particle Physics
  7. Message-ID: <danpop.827863856@rscernix>
  8. References: <mjs.827166006@hubcap> <4is2p9INNgag@keats.ugrad.cs.ubc.ca> <3152CFAB.32FF@oc.com> <4j4lh0INNgf9@anvil.ugrad.cs.ubc.ca> <garyg-2503962216030001@ts1-005.jaxnet.com>
  9. NNTP-Posting-Host: ues5.cern.ch
  10. X-Newsreader: NN version 6.5.0 #7 (NOV)
  11.  
  12. In <garyg-2503962216030001@ts1-005.jaxnet.com> garyg@jax.jaxnet.com (Gary M. Greenberg) writes:
  13.  
  14. >It is a solid piece of work, and I wish I had noted the site I was at
  15. >the had both the K&R 2 and an H&S errata. If I cross it's path again,
  16. >I'll get back to y'all.
  17.  
  18. Here's the most recent of version of the K&R2 errata (that I know of):
  19. (note the last section: "Not yet fixed in any printing")
  20.  
  21. From: dmr@research.att.com
  22. Date: Thu, 8 Dec 94 01:44 EST
  23. Subject: the errata list
  24.  
  25. Here is what we've accumulated.  The file hasn't changed
  26. since July 1992.
  27. Page numbers could be off by a tiny amount.
  28.  
  29.         Dennis
  30. -----
  31.      Changes to The C Programming Language, 2nd Edition
  32.  
  33.      As the C standard wended its way through the approval
  34. process and become final, Brian and I prepared fixes to put
  35. in new printings of the second edition of  ``The C
  36. Programming Language.'' These printings are identified by a
  37. large red ``ANSI C'' on the upper right front corner.
  38. Fortunately, the changes are minor; some repair our bugs, a
  39. few account for last-minute changes in the draft standard.
  40. For the benefit of previous and near-future purchasers, here
  41. are the changes that were made:
  42.  
  43. Two or three sentences in the Preface and Introduction are
  44. updated to describe the state of the Standard.
  45.  
  46. atof is in  <stdlib.h>, not  <math.h>; this changes 71, 76,
  47. 82, 121.
  48.  
  49. On page 86, error corrected:  missing automatic initializers
  50. are zero too.
  51.  
  52. On page 168: changed 1 to 1.0 to avoid potential overflow.
  53.  
  54. Minor typos are corrected on pages 87, 89, 164, 165, 168,
  55. 180.
  56.  
  57. The inconspicuous references to  noalias on pages 192 and
  58. 211 are removed.
  59.  
  60. The following paragraph is added to the end of section A6.6
  61. (p 199):
  62.  
  63.      A pointer may be converted to another pointer whose
  64.      type is the same except for the addition or removal of
  65.      qualifiers (A4.4, A8.2) of the object type to which the
  66.      pointer refers.  If qualifiers are added, the new
  67.      pointer is equivalent to the old except for
  68.      restrictions implied by the new qualifiers.  If
  69.      qualifiers are removed, operations on the underlying
  70.      object remain subject to the qualifiers in its actual
  71.      declaration.
  72.  
  73.  
  74. On p. 199, beginning of section A6.8, ``Any pointer may be
  75. converted to type  void  *...'' is changed to ``Any pointer
  76. >to an object< may be converted to type  void  *...''.
  77.  
  78. On p. 204, A7.4.4, ``The operand of the unary + operator
  79. must have arithmetic or pointer type...'' should read ``must
  80. have arithmetic type...''.
  81.  
  82. On p. 206, A7.9, about relational operators:  ``Pointers to
  83. objects of the same type may be compared...'' is changed to
  84. ``Pointers to object of the same type >(ignoring any
  85. qualifiers)< may be compared...''.
  86.  
  87. The indented material on p. 209, ``According to the
  88. restrictions...  relaxing it.'' is removed.   [This is
  89. related to the paragraph added above.  The wording of the
  90. penultimate draft made it useless to take an (int *)
  91. pointer, cast it to (const  int  *), then cast it back to
  92. (int *).]
  93.  
  94. On p. 219 middle, initialization of structures, add
  95. ``Unnamed bit-field members are ignored, and are not
  96. initialized.''
  97.  
  98.  
  99. Appendix B changes:
  100.  
  101. p 242:  Add ``fflush(NULL) flushes all output streams.'' to
  102.  fflush description.
  103.  
  104. p 243:  Change to ``it must be called before reading,
  105. writing >or any other operation<'' in  setvbuf description.
  106.  
  107. p 249:  Add ``Comparison functions treat arguments as
  108. unsigned  char arrays.''  to  <string.h> description.
  109.  
  110. p 255:  Change range of  tm_sec to (0,61) for leap seconds.
  111.  
  112. p 255:  Change  CLK_TCK to  CLOCKS_PER_SEC.
  113.  
  114. p 257:  Drop  U and  L suffixes from  <limits.h> constants.
  115.  tm_sec range is (00,61) here too.
  116.  
  117. Appendix C change:
  118.  
  119. p 261:  Change ``External declarations without any
  120. specifiers...'' to ``External >data< declarations without
  121. any specifiers...''.
  122.  
  123. The index has been reprinted to fix a couple of typos and
  124. account for motion within Appendix A;  one page of the table
  125. of contents is changed.
  126.  
  127.  
  128. October, 1989: Minor changes on page 131 to add & to last
  129. example, on page 208 to change ``equal'' to ``unequal'' in
  130. the description of logical OR, and on page 254 to clarify
  131. that only volatile automatics are saved with longjmp.
  132.  
  133. Not yet fixed in any printing:
  134.  
  135. page 53: Note under the table should say & as well as  + - *
  136. has higher precedence as a unary operator.
  137.  
  138. page 111: indent is too large, and a bit of program text is
  139. cut off.
  140.  
  141. page 231  extra right paren in nested call to cat macro.
  142.  
  143. page 246: first argument of sscanf should have type
  144. const char *.
  145.  
  146. page 249: in description of strncpy, t => ct.
  147.  
  148. There is no mention of the offsetof macro, and should be.
  149.  
  150. The scanf functions do not ignore white space in formats.
  151.  
  152. p. 49 shifts:  `which must be positive' -> `which must be non-negative'
  153.  
  154. --
  155. Dan Pop
  156. CERN, CN Division
  157. Email: danpop@mail.cern.ch 
  158. Mail:  CERN - PPE, Bat. 31 R-004, CH-1211 Geneve 23, Switzerland
  159.